首页
下载应用
提交文章
关于我们
🔥 热搜 🔥
1
百度
2
今日热点
3
微信公众平台
4
贴吧
5
opgg
6
dnf私服
7
百度贴吧
8
知乎
9
dnf公益服
10
百度傻逼
分类
社会
娱乐
国际
人权
科技
经济
其它
首页
下载应用
提交文章
关于我们
🔥
热搜
🔥
1
百度
2
今日热点
3
微信公众平台
4
贴吧
5
opgg
6
dnf私服
7
百度贴吧
8
知乎
9
dnf公益服
10
百度傻逼
分类
社会
娱乐
国际
人权
科技
经济
其它
李光耀:过早翘起尾巴与美国对抗 是中国厄运的开始!
劲爆!为了姜萍两位女CEO互揭老底!
谁会想到,裁员会裁到总编辑头上
“环评”提质增效 助力高质量发展?
“烂泥扶不上墙”!知名大哥同时切割一哥一姐!放话:再刷SQJ!
生成图片,分享到微信朋友圈
查看原文
其他
[答疑]某本书上的一张序列图评点
UMLChina
2023-06-27
贝贝 2019-8-24 10:56
潘老师,这个图是不是不太对。
插卡,输入密码并不是ATM的职责?
U
MLChina潘加宇:
这种图用建模思维一挤压,脓包太多了。
问题一、几个生命线上的实例,抽象级别不一致。
ATM用户--系统(人肉系统)
ATM--系统(非人肉系统)
Bank的意思是银行,那是个组织,不应和系统并列,应该写清楚是和银行的哪个系统交互,可能是一个人肉系统,也可能是一个非人肉系统。
问题二、责任大小不清
既然是系统之间的交互,责任就不能是插卡,而是系统之间交互的目标,例如"取现金"。
什么情况下可以在消息里写"插卡"?
情况1:
分析序列图,这时,对应的实例是"储户界面",而不是"ATM"
情况2:
决定使用序列图来表达ATM系统的需求。
这种做法不推荐,但如果硬要这样做也不是不行。
如果是这样,"插卡"是一个步骤是可以的,但要做以下修改:
a、"ATM"三个字应该改为"系统",不需要出现系统的名字。
b、"银行系统"的自反消息“验证”属于目标系统能检测的范围之外,删掉。
问题三、责任主体不清
"提示输入密码"是ATM的责任,不是人的责任,如果要画,应该改为自己指自己。
问题四、返回消息的问题
a、能不画就不画
b、即使画,上面写的东西相当于调用的返回值,应该是一个名词,例如"验证结果",而不是一个动词。
问题五、执行者的名字
ATM的执行者叫"ATM用户","系统给谁用,给用户用呗"这种命名是没有经过任何思考得到的,没有价值,和"可乐卖给谁,卖给想喝可乐的人"、"该出哪张牌,出最该出的那张"一样,属于正确而无用的废话。
改名为领域的用语"储户"甚至"市民"、"白领"、"大妈"都要更好。
您可能也对以下帖子感兴趣
{{{title}}}
文章有问题?点此查看未经处理的缓存